package com.usefullc.user.param;

import com.usefullc.common.domain.BaseDomain;
import com.usefullc.common.enums.ValidTypeEnum;
import com.usefullc.system.validator.UsefulPropertyVerify;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

@ApiModel("用户注册参数")
@Data
public class UserRegisterParam extends BaseDomain {


    @ApiModelProperty(notes = "注册类型",required = true)
    private Integer registerType;

    @ApiModelProperty(notes = "设备号ID",required = true)
    private String deviceId;

    @ApiModelProperty(notes = "区号",required = true)
    private String areaCode;

    @ApiModelProperty(notes = "用户类型",required = true)
    private Integer userType;

    @UsefulPropertyVerify(type = ValidTypeEnum.MOBILE)
    @ApiModelProperty(notes = "手机号码",required = true)
    private String mobile;

    @UsefulPropertyVerify(minLen = 2,maxLen = 12)
    @ApiModelProperty(notes = "账号/用户名")
    private String accountNo;

    @ApiModelProperty(notes = "邮箱地址",required = true)
    private String email;

    @UsefulPropertyVerify(required = true,minLen = 4,maxLen = 4)
    @ApiModelProperty(notes = "验证码",required = true)
    private String checkCode;

    @UsefulPropertyVerify(required = true,minLen = 32,maxLen = 32)
    @ApiModelProperty(notes = "密码",required = true)
    private String pwd;

    @ApiModelProperty(notes = "别人邀请码",required = true)
    private String shareInviteCode;


}
